package com.jintian.smart.kernel.job.domain.entity;

import com.jintian.smart.kernel.core.enumeration.SmartJobTriggerTypeEnum;
import lombok.Data;
import org.beetl.sql.annotation.entity.AssignID;
import org.beetl.sql.annotation.entity.Table;

import java.time.LocalDateTime;

/**
 * 定时任务 实体类
 */
@Data
@Table(name = "kernel_job")
public class SmartJobEntity {
    /**
     * 任务id
     */
    @AssignID("snowid")
    private Integer jobId;

    /**
     * 任务名称
     */
    private String jobName;

    /**
     * 执行类
     */
    private String jobClass;

    /**
     * 触发类型
     *
     * @see SmartJobTriggerTypeEnum
     */
    private String triggerType;

    /**
     * 触发配置
     */
    private String triggerValue;

    /**
     * 定时任务参数 可选
     */
    private String param;

    /**
     * 是否启用
     */
    private Integer enabledFlag;

    /**
     * 最后一执行时间
     */
    private LocalDateTime lastExecuteTime;

    /**
     * 最后一次执行记录id
     */
    private Long lastExecuteLogId;

    /**
     * 备注描述 可选
     */
    private String remark;

    /**
     * 排序
     */
    private Integer sort;

    /**
     * 是否删除
     */
    private Integer deletedFlag;

    private String updateName;

    private LocalDateTime updateTime;

    private LocalDateTime createTime;
}
